#ifndef _MT5_UIACHIEVEMENT_GAIN_H_
#define _MT5_UIACHIEVEMENT_GAINH_


#include "mat_ui_popupanimator.h"
#include "mat_define.h"

namespace ui
{
	class UIWidget;
}

class MATSfx;

class MATUIAchievementGain : public MATUIPopupAnimator
{
public:

	
	enum		NOTIFICATION_STATE
	{
		STATE_COMING_NONE,
		STATE_COMING_OUT,
		STATE_DELAY,
		STATE_GOING_BACK,

	};
	
	MATUIAchievementGain();	
	~MATUIAchievementGain(){};

	virtual	void					Tick(float dt);
	virtual void					Hide();
	virtual void					OnAnimatedUIFinish();

	void							GainAchievement(RMS_TYPE Type);
	bool							IsGainedAchievement(RMS_TYPE Type) const;	
	void							ForceFinish();
	


protected:

	

	NOTIFICATION_STATE				m_State;
	std::vector<RMS_TYPE>			m_QueueNotification;

	ui::UIWidget*					m_pUIIcon;
	ui::UIWidget*					m_pUIMsg;
	ui::UIWidget*					m_pUIAnimatedIcon;
	ui::UIWidget*					m_pUIAnimatedTarget;
	float							m_Delay;

	MATSfx*							m_pSfx;

									
	

};

#endif